package OperateurSystem;

/**
 * Interface definition : GestionAuthentification
 * 
 * @author OpenORB Compiler
 */
public abstract class GestionAuthentificationPOA extends org.omg.PortableServer.Servant
        implements GestionAuthentificationOperations, org.omg.CORBA.portable.InvokeHandler
{
    public GestionAuthentification _this()
    {
        return GestionAuthentificationHelper.narrow(_this_object());
    }

    public GestionAuthentification _this(org.omg.CORBA.ORB orb)
    {
        return GestionAuthentificationHelper.narrow(_this_object(orb));
    }

    private static String [] _ids_list =
    {
        "IDL:OperateurSystem/GestionAuthentification:1.0"
    };

    public String[] _all_interfaces(org.omg.PortableServer.POA poa, byte [] objectId)
    {
        return _ids_list;
    }

    public final org.omg.CORBA.portable.OutputStream _invoke(final String opName,
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler)
    {

        if (opName.equals("adhesionA")) {
                return _invoke_adhesionA(_is, handler);
        } else if (opName.equals("adhesionF")) {
                return _invoke_adhesionF(_is, handler);
        } else if (opName.equals("connectionStation")) {
                return _invoke_connectionStation(_is, handler);
        } else if (opName.equals("obtenirStation")) {
                return _invoke_obtenirStation(_is, handler);
        } else if (opName.equals("seConnecterA")) {
                return _invoke_seConnecterA(_is, handler);
        } else if (opName.equals("seConnecterF")) {
                return _invoke_seConnecterF(_is, handler);
        } else if (opName.equals("verifIdentifiantsA")) {
                return _invoke_verifIdentifiantsA(_is, handler);
        } else if (opName.equals("verifIdentifiantsF")) {
                return _invoke_verifIdentifiantsF(_is, handler);
        } else {
            throw new org.omg.CORBA.BAD_OPERATION(opName);
        }
    }

    // helper methods
    private org.omg.CORBA.portable.OutputStream _invoke_adhesionA(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        String arg0_in = _is.read_string();
        int arg1_in = _is.read_long();
        int arg2_in = _is.read_long();
        String arg3_in = _is.read_string();

        try
        {
            int _arg_result = adhesionA(arg0_in, arg1_in, arg2_in, arg3_in);

            _output = handler.createReply();
            _output.write_long(_arg_result);

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientExistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientExistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_adhesionF(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        String arg0_in = _is.read_string();
        String arg1_in = _is.read_string();
        int arg2_in = _is.read_long();

        try
        {
            int _arg_result = adhesionF(arg0_in, arg1_in, arg2_in);

            _output = handler.createReply();
            _output.write_long(_arg_result);

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientExistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientExistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_obtenirStation(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        short arg0_in = _is.read_short();

        try
        {
            int _arg_result = obtenirStation(arg0_in);

            _output = handler.createReply();
            _output.write_long(_arg_result);

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientInexistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientInexistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_verifIdentifiantsA(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        int arg0_in = _is.read_long();

        try
        {
            verifIdentifiantsA(arg0_in);

            _output = handler.createReply();

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientInexistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientInexistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_verifIdentifiantsF(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        int arg0_in = _is.read_long();

        try
        {
            verifIdentifiantsF(arg0_in);

            _output = handler.createReply();

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientInexistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientInexistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_seConnecterA(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        int arg0_in = _is.read_long();
        String arg1_in = _is.read_string();

        try
        {
            seConnecterA(arg0_in, arg1_in);

            _output = handler.createReply();

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientInexistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientInexistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_seConnecterF(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        int arg0_in = _is.read_long();
        String arg1_in = _is.read_string();

        try
        {
            seConnecterF(arg0_in, arg1_in);

            _output = handler.createReply();

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ClientInexistantException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ClientInexistantExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

    private org.omg.CORBA.portable.OutputStream _invoke_connectionStation(
            final org.omg.CORBA.portable.InputStream _is,
            final org.omg.CORBA.portable.ResponseHandler handler) {
        org.omg.CORBA.portable.OutputStream _output;
        int arg0_in = _is.read_long();
        int arg1_in = _is.read_long();

        try
        {
            connectionStation(arg0_in, arg1_in);

            _output = handler.createReply();

        }
        catch (OperateurSystem.GestionAuthentificationPackage.ZoneInexistanteException _exception)
        {
            _output = handler.createExceptionReply();
            OperateurSystem.GestionAuthentificationPackage.ZoneInexistanteExceptionHelper.write(_output,_exception);
        }
        return _output;
    }

}
